﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MbUnit.Framework;

namespace Frost.Tests.TestStrategyServiceSpecs {
    [TestFixture]
    public class when_test_is_a_fit_test : with_test_strategy_service {
        ITestStrategy _strategy;
        protected override void Because_of() {
            var test = new FitTest();

            _strategy = _strategyService.GetTestStrategy(test);
        }

        [Test]
        public void should_return_fit_execution_strategy() {
            _strategy.ShouldBeTypeOf<FitTestStrategy>();
        }
    }
    
    
    public abstract class with_test_strategy_service {
        protected TestStrategyService _strategyService;

        [SetUp]
        public void Setup() {
            _strategyService = new TestStrategyService();

            Because_of();
        }

        protected abstract void Because_of();
    }
}
